package com.taskflow.entity;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

/**
 * 关单数据实体
 */
@Data
public class EntryData {
    private String preEntryId;
    private String entryId;
    private String seqNo;
    private String customMaster;
    private String customMasterName;
    private String tradeCo;
    private String tradeName;
    private String tradeCoScc;
    private String iePort;
    private String iePortName;
    private String ieDate;
    @JsonProperty("dDate")
    private String dDate;
    private String manualNo;
    private String overseasConsigneeCode;
    private String overseasConsigneeEname;
    private String trafMode;
    private String trafModeName;
    @JsonProperty("trafName")
    private String trafName;
    @JsonProperty("voyageNo")
    private String voyageNo;
    @JsonProperty("billNo")
    private String billNo;
    @JsonProperty("ownerCode")
    private String ownerCode;
    @JsonProperty("ownerName")
    private String ownerName;
    @JsonProperty("ownerCodeScc")
    private String ownerCodeScc;
    @JsonProperty("tradeMode")
    private String tradeMode;
    private String tradeModeName;
    @JsonProperty("cutMode")
    private String cutMode;
    @JsonProperty("cutName")
    private String cutName;
    @JsonProperty("licenseNo")
    private String licenseNo;
    @JsonProperty("contrNo")
    private String contrNo;
    @JsonProperty("tradeAreaCode")
    private String tradeAreaCode;
    @JsonProperty("tradeAreaName")
    private String tradeAreaName;
    @JsonProperty("tradeCountry")
    private String tradeCountry;
    private String tradeCountryName;
    @JsonProperty("distinatePort")
    private String distinatePort;
    @JsonProperty("distinatePortName")
    private String distinatePortName;
    @JsonProperty("cusfie")
    private String entryPortCode;
    @JsonProperty("entryPortName")
    private String entryPortName;
    @JsonProperty("wrapType")
    private String wrapType;
    @JsonProperty("wrapTypeName")
    private String wrapTypeName;
    private String packNo;
    @JsonProperty("netWt")
    private String netWt;
    @JsonProperty("grossWt")
    private String grossWt;
    @JsonProperty("transMode")
    private String transMode;
    @JsonProperty("transModeName")
    private String transModeName;
    @JsonProperty("feeRate")
    private String feeRate;
    @JsonProperty("insurRate")
    private String insurRate;
    @JsonProperty("otherRate")
    private String otherRate;
    
    // 临时字段：用于拼接费率（不映射到数据库）
    private transient String feeCurr;
    private transient String feeMark;
    private transient String insurCurr;
    private transient String insurMark;
    private transient String otherCurr;
    private transient String otherMark;
    @JsonProperty("certMark")
    private String certMark;
    @JsonProperty("markNo")
    private String markNo;
    @JsonProperty("noteS")
    private String noteS;
    @JsonProperty("gNo")
    private String gNo;
    @JsonProperty("codeT")
    private String codeTS;
    @JsonProperty("gName")
    private String gName;
    @JsonProperty("gModel")
    private String gModel;
    @JsonProperty("qty")
    private String qty;
    @JsonProperty("qtyUnit")
    private String qtyUnit;
    @JsonProperty("qty1")
    private String qty1;
    @JsonProperty("qty1Unit")
    private String qty1Unit;
    @JsonProperty("qty2")
    private String qty2;
    @JsonProperty("qty2Unit")
    private String qty2Unit;
    @JsonProperty("declPrice")
    private String declPrice;
    @JsonProperty("declTotal")
    private String declTotal;
    @JsonProperty("tradeCurr")
    private String tradeCurr;
    @JsonProperty("tradeCurrName")
    private String tradeCurrName;
    @JsonProperty("originCountry")
    private String originCountry;
    @JsonProperty("originCountryName")
    private String originCountryName;
    @JsonProperty("destinationCountry")
    private String destinationCountry;
    @JsonProperty("destinationCountryName")
    private String destinationCountryName;
    @JsonProperty("districtCode")
    private String districtCode;
    @JsonProperty("districtName")
    private String districtName;
    @JsonProperty("dutyMode")
    private String dutyMode;
    @JsonProperty("dutyModeName")
    private String dutyModeName;
    @JsonProperty("agentCode")
    private String agentCode;   
    @JsonProperty("agentName")
    private String agentName;
    @JsonProperty("agentCodeScc")
    private String agentCodeScc;
    @JsonProperty("promiseMark1")
    private String promiseMark1;
    @JsonProperty("promiseMark2")
    private String promiseMark2;
    @JsonProperty("promiseMark3")
    private String promiseMark3;
}

